#!/usr/bin/env python3
# -*- coding: utf-8 -*-
##############################################
# @Author: DengLibin 榆霖
# @Date: Create in 2022-03-09 16:20:58
# @Description: 爬猪八戒
##############################################
'module name'
__author__ = 'DengLibin'

import logging

import requests
from lxml import etree


##############################################
# @Author: DengLibin 榆霖
# @Date: Create in 2022-03-09 16:24:35
# @Description: 猪八戒网站爬虫
##############################################
class BajieSider:
    ##############################################
    # @Author: DengLibin 榆霖
    # @Date: Create in 2022-03-09 16:23:32
    # @Description: 初始化
    ##############################################
    def __init__(self) -> None:
        self.url = 'https://chengdu.zbj.com/search/f/?kw=sass'
        self.req_header = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36"
        }
    
    ##############################################
    # @Author: DengLibin 榆霖
    # @Date: Create in 2022-03-09 16:23:47
    # @Description: 获取响应
    ##############################################
    def get_resp(self):
        return requests.get(self.url, headers=self.req_header)
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    ##############################################
    # @Author: DengLibin 榆霖
    # @Date: Create in 2022-03-09 16:24:55
    # @Description: 获取响应的html文本
    ##############################################
    def get_html(self):
        resp = self.get_resp()
        content =  resp.text
        resp.close()
        return content
    
    def save_html_to_file(self):
        html = self.get_html()
        with open('zhubajie.html', 'w', encoding='utf-8') as f:
            f.write(html)
            
        logging.info('save html to file success!')
    
    ##############################################
    # @Author: DengLibin 榆霖
    # @Date: Create in 2022-03-09 16:27:11
    # @Description: 运行 获取服务商
    ##############################################
    def run(self):
        html = self.get_html()
        html = etree.HTML(html)
        divs = html.xpath('/html/body/div[6]/div/div/div[2]/div[5]/div/div')
        
        for div in divs:
            title = div.xpath('./div/div/a[2]/div[2]/div[2]/p/text()')
            print(title)

if __name__ == '__main__':
    spider = BajieSider()
    spider.run()
